@@ -0,0 +1,23 @@ |
||
1 |
+# Generated by Django 3.2.6 on 2021-08-16 13:48 |
|
2 |
+ |
|
3 |
+from django.db import migrations, models |
|
4 |
+ |
|
5 |
+ |
|
6 |
+class Migration(migrations.Migration): |
|
7 |
+ |
|
8 |
+ dependencies = [ |
|
9 |
+ ('account', '0003_auto_20210816_1054'), |
|
10 |
+ ] |
|
11 |
+ |
|
12 |
+ operations = [ |
|
13 |
+ migrations.AlterField( |
|
14 |
+ model_name='administratorinfo', |
|
15 |
+ name='status', |
|
16 |
+ field=models.BooleanField(default=True, help_text='Status', verbose_name='status'), |
|
17 |
+ ), |
|
18 |
+ migrations.AlterField( |
|
19 |
+ model_name='userinfo', |
|
20 |
+ name='status', |
|
21 |
+ field=models.BooleanField(default=True, help_text='Status', verbose_name='status'), |
|
22 |
+ ), |
|
23 |
+ ] |
@@ -222,8 +222,8 @@ def get_screen_data(point=None, point_id=None): |
||
222 | 222 |
).values('macid', 'temperature') |
223 | 223 |
logs = {log.get('macid'): log.get('temperature') or get_old_temperature(point.point_id, log.get('macid')) for log in logs} |
224 | 224 |
|
225 |
- infos = IsolationPointUserInfo.objects.filter(point_id=point.point_id, status=True).values('pk', 'fields') |
|
226 |
- infos = {info.get('pk'): info.get('fields') for info in infos} |
|
225 |
+ infos = IsolationPointUserInfo.objects.filter(point_id=point.point_id, status=True).values('pk', 'fields', 'observed_days') |
|
226 |
+ infos = {info.get('pk'): {'fields': info.get('fields'), 'observed_days': info.get('observed_days')} for info in infos} |
|
227 | 227 |
|
228 | 228 |
total_active_eqpt_num = eqpts.count() |
229 | 229 |
has_upload_temperature_num = len(logs) |
@@ -232,7 +232,8 @@ def get_screen_data(point=None, point_id=None): |
||
232 | 232 |
eqpts = [{**eqpt.screen_data, **{ |
233 | 233 |
'has_upload': eqpt.macid in logs, |
234 | 234 |
'temperature': logs.get(eqpt.macid, 0), |
235 |
- }, **{field.get('key', ''): field.get('value', '') for field in infos.get(eqpt.ipui_pk, {})}} for eqpt in eqpts] |
|
235 |
+ 'observed_days': infos.get(eqpt.ipui_pk, {}).get('observed_days', 0), |
|
236 |
+ }, **{field.get('key', ''): field.get('value', '') for field in infos.get(eqpt.ipui_pk, {}).get('fields', {})}} for eqpt in eqpts] |
|
236 | 237 |
reminds = [{ |
237 | 238 |
'name': eqpt.get('name'), |
238 | 239 |
'room': eqpt.get('room'), |
@@ -258,7 +259,7 @@ def get_screen_data(point=None, point_id=None): |
||
258 | 259 |
'temperature': eqpt.get('temperature', ''), |
259 | 260 |
'status': '已上报' if eqpt.get('temperature') else '未上报', |
260 | 261 |
'last_report_time': eqpt.get('last_submit_at', ''), |
261 |
- 'observed_days': 1, |
|
262 |
+ 'observed_days': eqpt.get('observed_days', 0), |
|
262 | 263 |
} for eqpt in eqpts] |
263 | 264 |
|
264 | 265 |
return { |
@@ -16,7 +16,7 @@ class IsolationPointInfoAdmin(admin.ModelAdmin): |
||
16 | 16 |
|
17 | 17 |
|
18 | 18 |
class IsolationPointUserInfoAdmin(admin.ModelAdmin): |
19 |
- list_display = ('point_id', 'user_id', 'fields', 'status', 'updated_at', 'created_at') |
|
19 |
+ list_display = ('point_id', 'user_id', 'fields', 'observed_days', 'leave_at', 'status', 'updated_at', 'created_at') |
|
20 | 20 |
|
21 | 21 |
|
22 | 22 |
class ThermometerEquipmentInfoAdmin(ReadOnlyModelAdmin, admin.ModelAdmin): |
@@ -0,0 +1,48 @@ |
||
1 |
+# Generated by Django 3.2.6 on 2021-08-16 13:48 |
|
2 |
+ |
|
3 |
+from django.db import migrations, models |
|
4 |
+ |
|
5 |
+ |
|
6 |
+class Migration(migrations.Migration): |
|
7 |
+ |
|
8 |
+ dependencies = [ |
|
9 |
+ ('equipment', '0009_auto_20210816_1054'), |
|
10 |
+ ] |
|
11 |
+ |
|
12 |
+ operations = [ |
|
13 |
+ migrations.AddField( |
|
14 |
+ model_name='isolationpointuserinfo', |
|
15 |
+ name='observed_days', |
|
16 |
+ field=models.IntegerField(default=0, help_text='已测温天数', verbose_name='observed_days'), |
|
17 |
+ ), |
|
18 |
+ migrations.AlterField( |
|
19 |
+ model_name='isolationpointfieldpoolinfo', |
|
20 |
+ name='status', |
|
21 |
+ field=models.BooleanField(default=True, help_text='Status', verbose_name='status'), |
|
22 |
+ ), |
|
23 |
+ migrations.AlterField( |
|
24 |
+ model_name='isolationpointinfo', |
|
25 |
+ name='status', |
|
26 |
+ field=models.BooleanField(default=True, help_text='Status', verbose_name='status'), |
|
27 |
+ ), |
|
28 |
+ migrations.AlterField( |
|
29 |
+ model_name='isolationpointuserinfo', |
|
30 |
+ name='status', |
|
31 |
+ field=models.BooleanField(default=True, help_text='Status', verbose_name='status'), |
|
32 |
+ ), |
|
33 |
+ migrations.AlterField( |
|
34 |
+ model_name='thermometerequipmentinfo', |
|
35 |
+ name='status', |
|
36 |
+ field=models.BooleanField(default=True, help_text='Status', verbose_name='status'), |
|
37 |
+ ), |
|
38 |
+ migrations.AlterField( |
|
39 |
+ model_name='thermometermeasureinfo', |
|
40 |
+ name='status', |
|
41 |
+ field=models.BooleanField(default=True, help_text='Status', verbose_name='status'), |
|
42 |
+ ), |
|
43 |
+ migrations.AlterField( |
|
44 |
+ model_name='thermometermeasureloginfo', |
|
45 |
+ name='status', |
|
46 |
+ field=models.BooleanField(default=True, help_text='Status', verbose_name='status'), |
|
47 |
+ ), |
|
48 |
+ ] |
@@ -142,6 +142,7 @@ class IsolationPointUserInfo(BaseModelMixin): |
||
142 | 142 |
|
143 | 143 |
fields = JSONField(_('fields'), default=[], blank=True, null=True, help_text='字段信息') |
144 | 144 |
|
145 |
+ observed_days = models.IntegerField(_('observed_days'), default=0, help_text='已测温天数') |
|
145 | 146 |
leave_at = models.DateTimeField(_('leave_at'), blank=True, null=True, help_text='离开时间') |
146 | 147 |
|
147 | 148 |
remark = JSONField(_('remark'), default=[], blank=True, null=True, help_text='备注') |